package cz.muni.fi.pv112.cranesimulator.scene;

import java.awt.event.KeyEvent;
import java.awt.event.MouseEvent;
import javax.media.opengl.GL;
import javax.media.opengl.GL2;
import javax.media.opengl.glu.GLU;

/**
 *
 * @author Michal Ďuriš
 */
public interface Scene {

    int X_AXIS = 0;
    int Y_AXIS = 1;
    int Z_AXIS = 2;

    void init(GL gl, GLU glu);

    void processKeyInput(KeyEvent keyEvent, boolean keyPressed);

    void processMouseInput(MouseEvent mouseEvent, int mouseEventType);

    void displayScene(GL2 gl);

    void unloadModels(GL gl);

}
